<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>表格相同内容合并</title>
</head>
<body>

<table width="400" border="1" id="table1">
<tr>
    <th>Company</th>
    <th>Address</th>
    <th>Company</th>
    <th>Address</th>
    <th>Company</th>
    <th>Address</th>
</tr>
<tr>
<td>a</td>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
</tr>
<tr>
<td>a</td>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>6</td>
</tr>
<tr>
<td>a</td>
<td>2</td>
<td>3</td>
<td>3</td>
<td>4</td>
<td> </td>
</tr>
<tr>
<td>b</td>
<td>3</td>
<td>4</td>
<td>6</td>
<td>7</td>
<td> </td>
</tr>
<tr>
<td>b</td>
<td>3</td>
<td>5</td>
<td>6</td>
<td>7</td>
<td> </td>
</tr>
<tr>
<td>2c</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td>5</td>
<td> </td>
</tr>
<tr>
<td>c</td>
<td>2</td>
<td>3</td>
<td>5</td>
<td>5</td>
<td> </td>
</tr>
<tr>
<td>d</td>
<td>1</td>
<td>2</td>
<td>3</td>
<td>4</td>
<td></td>
</tr>
<tr>
<td>d</td>
<td>1</td>
<td>2</td>
<td>4</td>
<td>4</td>
<td></td>
</tr>
</table>
</body>

<script type="text/javascript">
    // function mc(tableId, startRow, endRow, col) {
    //     var tb = document.getElementById(tableId);
    //     if (col >= tb.rows[0].cells.length) {
    //     return;
    //     }
    //     if (col == 0) { endRow = tb.rows.length-1; }
        
    //     for (var i = startRow; i < endRow; i++) {
    //       //如果当前的内容和下一个row的内容一样
    //       if (tb.rows[startRow].cells[col].innerHTML == tb.rows[i + 1].cells[0].innerHTML) {
    //         tb.rows[i + 1].removeChild(tb.rows[i + 1].cells[0]);    //删除当前内容
    //         tb.rows[startRow].cells[col].rowSpan = (tb.rows[startRow].cells[col].rowSpan | 0) + 1; //rowspan +1
    //         if (i == endRow - 1 && startRow != endRow) {
    //           mc(tableId, startRow, endRow, col + 1);
    //         }
    //       } else {
    //         mc(tableId, startRow, i + 0, col + 1);
    //         startRow = i + 1;
    //       }
    //     }
    // }
    // mc('table1',0,0,0);


 function uniteTdCells(tableId) {
  var table = document.getElementById(tableId);
  for (var i = 0; i < table.rows.length; i++) {
    for (var c = 0; c < table.rows[i].cells.length; c++) {
        if (c == 0 || c == 1) { //选择要合并的列序数，去掉默认全部合并
        for (var j = i + 1; j < table.rows.length; j++) {
          var cell1 = table.rows[i].cells[c].innerHTML;
          var cell2 = table.rows[j].cells[c].innerHTML;
          if (cell1 == cell2) { 
            table.rows[j].cells[c].style.display = 'none';
            table.rows[j].cells[c].style.verticalAlign = 'middle';
            table.rows[i].cells[c].rowSpan++;
          } else {
            table.rows[j].cells[c].style.verticalAlign = 'middle'; //合并后剩余项内容自动居中
            break;
          };
        }
       }
    }
  }
 }

 uniteTdCells('table1');
    </script>
</html>